package MyHttp;

import java.util.HashMap;
import java.util.Map;

//处理动态业务逻辑的抽象类
//如http://localhost:12345/servlet/login  证明动态请求
public abstract class Servlet {
    public abstract String doRequest(String requestUrl, String requestStr);
//获取Url路径的参数
    public Map<String, Object>getUrlParams(String paramStr){
        Map<String,Object> map=new HashMap<>();
        if(paramStr==null||paramStr.equals("")){
            return map;
        }
        String[] params=paramStr.split("&");
        for(String param :params){
            String [] p=param.split("=");
            if(p.length==2){
                map.put(p[0],p[1]);
            }
        }
        return map;
    }
    //获取post提交的正文的参数
    public Map<String,Object> getPostParam(String requestStr){
        String[] requestArr=requestStr.split("\r\n");
        String paramStr=requestArr[requestArr.length-1];  //请求头与请求内容用换行分开
        //System.out.println(paramStr);//填什么获取什么，不管输入对错 username=111&password=111
        return getUrlParams(paramStr);
    }
}
